package com.uzai.console.service.fd;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.uzai.console.dto.fd.fdsendjob.FdSendJobDto;
import com.uzai.console.dto.fd.fdsendjob.FdSendJobIdDto;
import com.uzai.console.dto.fd.fdsendjob.FdSendJobQuery;
import com.uzai.console.vo.fd.fdsendjob.FdSendJobVo;

/**
 * @author liuqi
 * @date 2021年08月13日 11:33
 */
public interface FdSendJobService {

    /**
     * 查询发单发送任务列表
     * @author liuqi
     * @date 2021/8/13 11:38
     * @param query
     * @return null
     */
    Page<FdSendJobVo> findFdSendJobList(FdSendJobQuery query);

    /**
     * 查询发单发送任务详情
     * @author liuqi
     * @date 2021/8/13 11:38
     * @param fdSendJobIdDto
     * @return null
     */
    FdSendJobVo findFdSendJobInfo(FdSendJobIdDto fdSendJobIdDto);

    /**
     * 修改发单发送任务开始时间
     * @author liuqi
     * @date 2021/8/13 11:38
     * @param fdSendJobDto
     * @return null
     */
    void updateFdSendJob(FdSendJobDto fdSendJobDto);

    /**
     * 开始发单发送任务
     * @author liuqi
     * @date 2021/8/13 11:38
     * @param fdSendJobIdDto
     * @return null
     */
    void startFdSendJob(FdSendJobIdDto fdSendJobIdDto);

    /**
     * 暂停发单发送任务
     * @author liuqi
     * @date 2021/8/13 11:38
     * @param fdSendJobIdDto
     * @return null
     */
    void pauseFdSendJob(FdSendJobIdDto fdSendJobIdDto);

    /**
     * 结束发单发送任务
     * @author liuqi
     * @date 2021/8/13 11:38
     * @param fdSendJobIdDto
     * @return null
     */
    void finishFdSendJob(FdSendJobIdDto fdSendJobIdDto);

    /**
     * 删除发单发送任务
     * @author liuqi
     * @date 2021/8/13 11:38
     * @param fdSendJobIdDto
     * @return null
     */
    void deleteFdSendJob(FdSendJobIdDto fdSendJobIdDto);


    /**
     * 手动发送发单任务
     * @author liuqi
     * @date 2021/8/13 11:38
     * @param fdSendJobDto
     * @return null
     */
    void addFdSendJob(FdSendJobDto fdSendJobDto);

}
